/*
 * Copyright (C) 2021 Realtek Semiconductor Corp.
 * All Rights Reserved.
 *
 * This program is the proprietary software of Realtek Semiconductor
 * Corporation and/or its licensors, and only be used, duplicated,
 * modified or distributed under the authorized license from Realtek.
 *
 * ANY USE OF THE SOFTWARE OTHER THAN AS AUTHORIZED UNDER
 * THIS LICENSE OR COPYRIGHT LAW IS PROHIBITED.
 *
 * Purpose : Definition of ME attribute: XG-PON upstream management performance monitoring history data  (346)
 *
 * Feature : The file includes the following modules and sub-modules
 *           (1) ME attribute: XG-PON upstream management performance monitoring history data  (346)
 */

#ifndef __MIB_XGPONUSMANGPMHD_TABLE_H__
#define __MIB_XGPONUSMANGPMHD_TABLE_H__

#ifdef __cplusplus
extern "C" {
#endif


/* Table XG-PON attribute index */
#define MIB_TABLE_XGPONUSMANGPMHD_ATTR_NUM (9)
#define MIB_TABLE_XGPONUSMANGPMHD_ENTITYID_INDEX ((MIB_ATTR_INDEX)1)
#define MIB_TABLE_XGPONUSMANGPMHD_INTENDTIME_INDEX ((MIB_ATTR_INDEX)2)
#define MIB_TABLE_XGPONUSMANGPMHD_THRESHOLDID_INDEX ((MIB_ATTR_INDEX)3)
#define MIB_TABLE_XGPONUSMANGPMHD_USPLOAMMSGCNT_INDEX ((MIB_ATTR_INDEX)4)
#define MIB_TABLE_XGPONUSMANGPMHD_SNONUMSG_INDEX ((MIB_ATTR_INDEX)5)
#define MIB_TABLE_XGPONUSMANGPMHD_REGISTRATIONMSGCNT_INDEX ((MIB_ATTR_INDEX)6)
#define MIB_TABLE_XGPONUSMANGPMHD_KEYREPORTMSGINDEX ((MIB_ATTR_INDEX)7)
#define MIB_TABLE_XGPONUSMANGPMHD_ACKMSGCNT_INDEX ((MIB_ATTR_INDEX)8)
#define MIB_TABLE_XGPONUSMANGPMHD_SLPREQUESTMSGCNT_INDEX ((MIB_ATTR_INDEX)9)



/* Table XG-PONUSMANGMHD attribute len, only string attrubutes have length definition */

// Table XG-PONUSMANGMHD entry structure
typedef struct {
	UINT16   EntityId;
	UINT8    IntEndTime;
	UINT16   ThresholdID;
	UINT32   UsPloamMsgCnt;
	UINT32   SnOnuMsgCnt;
	UINT32   RegistrationMsgCnt;
	UINT32   KeyReportMsgCnt;
	UINT32   AckMsgCnt;
	UINT32   SlpRequestMsgCnt;
} __attribute__((packed)) MIB_TABLE_XGPONUSMANGPMHD_T;


#ifdef __cplusplus
}
#endif

#endif
